﻿/**
 * 常量类的构造方法。
 */
function _Const() {
    // 格
    this.GRID_SIZE = 26                                                             // 尺寸

    // 方块
    this.BLOCK_GRID_COUNT_H = 4                                                     // 一个方向由
    this.BLOCK_GRID_COUNT_V = 4                                                     // 4*4 的格组成

    // 游戏区域
    this.GAME_BOARD_GRID_COUNT_H = 10                                               // 横向格数
    this.GAME_BOARD_GRID_COUNT_V = 20                                               // 纵向格数
    this.GAME_BOARD_WIDTH = this.GRID_SIZE * this.GAME_BOARD_GRID_COUNT_H           // 宽度
    this.GAME_BOARD_HEIGHT = this.GRID_SIZE * this.GAME_BOARD_GRID_COUNT_V          // 高度
    this.GAME_BOARD_COLOR = "rgb(255, 255, 255)"                                    // 背景色

    // 预览区域
    this.PREVIEW_WIDTH = this.GRID_SIZE * 5                                         // 宽度
    this.PREVIEW_HEIGHT = this.GRID_SIZE * 5                                        // 高度
    this.PREVIEW_COLOR = "rgb(255, 255, 255)"                                       // 背景色

    // 按钮
    this.BUTTON_START_IMAGE_PATH = "url(res/button_start.png)"                      // "开始"按钮的图片文件路径
    this.BUTTON_PAUSE_IMAGE_PATH = "url(res/button_pause.png)"                      // "暂停"按钮的图片文件路径（正常状态）
    this.BUTTON_PAUSE_DISABLED_IMAGE_PATH = "url(res/button_pause_disabled.png)"    // "暂停"按钮的图片文件路径（禁用状态）
    this.BUTTON_RESUME_IMAGE_PATH = "url(res/button_resume.png)"                    // "继续"按钮的图片文件路径
    this.BUTTON_MUSIC_PLAY_IMAGE_PATH = "url(res/button_music_Play.png)"            // "播放音乐"按钮的图片文件路径
    this.BUTTON_MUSIC_STOP_IMAGE_PATH = "url(res/button_music_stop.png)"            // "停止音乐"按钮的图片文件路径

    // 定时器
    this.TIMER_INIT = 1000                                                          // 初始间隔值，单位毫秒
    this.TIMER_GROW = 100                                                           // 增长间隔值，单位毫秒，难度每增加1级，间隔值减少此数

    // 难度
    this.DIFF_BASE = 5000                                                           // 基数。分数每达到此数的整数倍时，难度增加
    this.DIFF_MAX = 10                                                              // 最大值。难度达到此数后不再增加

    // 胜利数
    this.WIN_NUMBER = this.DIFF_BASE * this.DIFF_MAX                                // 达到此数胜利

    // 事件
    this.UM_DIFFICULTY_UP = "UM_DIFFICULTY_UP"                                      // 难度增加事件
    this.UM_GAME_OVER = "UM_GAME_OVER"                                              // 游戏结束事件
    this.UM_SCORE = "UM_SCORE"                                                      // 得分事件

    // 主窗口
    this.IMAGE_PATH = "url(res/main_window.png)"                                    // 背景图片文件路径

    // 方向键
    this.KEY_LEFT = 37                                                              // 左
    this.KEY_UP = 38                                                                // 上
    this.KEY_RIGHT = 39                                                             // 右
    this.KEY_DOWN = 40                                                              // 下
}

const Const = new _Const()                                                          // 常量
